當程式執行發生錯誤 Error Handing 時會拋出異常=exception
Python提供try and except語法,更好的處理異常
範例一:整數相除
#當y是零時會發生錯誤,任何數除以零都不合理
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
請輸入一個整數:10
請輸入另一個整數:0
ZeroDivisionError: division by zero
解決異常處理
try:
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
exception ZeroDivisionError:
print("除數不能為零")
請輸入一個整數:6
請輸入另一個整數:0
除數不能為零
處理非整數錯誤
try:
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
exception ValueError:
print("請輸入整數")
exception ZeroDivisionError:
print("除數不能為零")
請輸入一個整數:5.7
請輸入整數
如果只要判斷錯誤撰寫方式
try:
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
exception (ValueError, ZeroDivisionError):
print("出現錯誤,請重新輸入")
finally:
print("無論是否出現錯誤,都會執行")
請輸入一個整數:20
請輸入另一個整數:4
5
無論是否出現錯誤,都會執行
finally用法:無論是否有錯誤都會出現
try:
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
exception (ValueError, ZeroDivisionError):
print("出現錯誤,請重新輸入")
finally:
print("無論是否出現錯誤,都會執行")
請輸入一個整數:20
請輸入另一個整數:0
出現錯誤,請重新輸入
無論是否出現錯誤,都會執行
else用法:其他錯誤出現則出現else
try:
x = int(input("請輸入一個整數:")
y = int(input("請輸入另一個整數:")
print(x/y)
exception (ValueError, ZeroDivisionError):
print("出現錯誤,請重新輸入")
else:
print("else")
檢測檔案是否存在:使用Python進行檔案偵測
import os
str = r"C:\User\Wcy\OneDrive\桌布\workspace
print(str)
if os.path.exists(str):
print("路徑存在!")
else
print("路徑不存在")
C:\User\Wcy\OneDrive\桌布\workspace
路徑存在!
檢查檔案類型isdfile、isdir(檔案、目錄)
import os
str = r"C:\User\Wcy\OneDrive\桌布\workspace
print(str)
if os.path.isfile(str):
print("該路徑為檔案")
elif os.path.isdir(str)
print("該路徑為目錄")
else:
print('other')
該路徑為目錄